Інформація про новину
  • Переглядів: 2495
  • Дата: 1-03-2021, 19:31
1-03-2021, 19:31

13. Кодування відеоданих

Категорія: Інформатика





Попередня сторінка:  12. Поняття мультимедіа. Кодування ауді...
Наступна сторінка:   14. Програмне забезпечення для опрацюв...

Надзвичайно багато інформації з навколишнього середовища людина сприймає за допомогою зору, тому саме відеоматеріали є найбільш інформативними

Принципи кодування відео

Як ви вже знаєте, рухоме зображення — відео — отримують, демонструючи почергово окремі кадри. Отже, щоб закодувати відео, потрібно закодувати зображення кожного його кадру приблизно так, як це описано в матеріалах раніше. Оскільки для отримання плавних рухів потрібно демонструвати 24 або більше кадрів на секунду, то обсяг відеоданих може бути значним

Закодовані кадри зберігають в одному файлі, додавши за потреби закодовані дані звукового супроводу

Мультфільм тривалістю 1 год 40 хв (6000 с) за частоти кадрів 24 кадри/с складається з 6000 • 24 = 144 000 кадрів.

За роздільності 720 х 400 пікселів і глибини кольору 3 байти обсяг даних одного кадру становить:

720 • 400 • 3 = 864 000 байтів.

Отже, загальний обсяг відеоданих становить:

144 000 • 864 000 = 124 416 000 000 байтів = 120 Гбайт.

Цікаво, як ці дані разом зі звуковою доріжкою поміщаються у значно меншому файлі обсягом 1,6 Гбайт?

Існують різні методи зменшення обсягу файлу до прийнятних розмірів. Розглянемо деякі з них докладніше.

1) Можна стиснути кожен кадр так само, як це робиться з фотографіями у форматах JPG (зі втратою якості) або PNG (без втрати якості). У такому разі кожний кадр під час перегляду фільму потрібно буде розпакувати, що вимагає додаткових обчислень, тобто збільшує навантаження на процесор.

2) Можна повністю зберігати лише ключові кадри, тобто ті, які дуже відрізняються від попередніх. Тоді з кадрів, що йдуть після ключового, достатньо зберегти лише ті фрагменти, що відрізняються від попереднього кадру. Це одночасно зменшить як обсяг файлу, так і обсяг обчислень

Під час скринкастингу передається через інтернет або записується до файлу те, що відбувається на екрані комп’ютера. Якщо ведучий при цьому щось пояснює, зображення може не змінюватися протягом декількох секунд. А під час переміщення вказівника змінюється тільки маленька ділянка екрана поблизу нього Тому другий метод може бути дуже ефективним

На практиці в різних форматах відеофайлів використовують ці та інші методи, а також їх комбінації.

Формати відеофайлів

Відеофайл містить набір статичних зображень, призначених для почергового виведення з певною частотою

Для стиснення і відтворення відео використовують спеціальні програми — кодеки (від слів кодування — декодування).

Формат відеофайлу визначається методом його стиснення. Більшість відеофайлів можуть містити статичні зображення, аудіо та відео різних форматів тощо. Такі файли називають медіаконтейнерами. Розглянемо деякі формати відеофайлів.

Формат

Опис

AVI

Медіаконтейнер, розроблений спочатку для ОС Windows. Відтворюється на смартфонах, комунікаторах тощо

WMV

Формат компанії Microsoft, може містити аудіо- й відеодані. Відтворюється плеєрами MPlayer, Windows Media Player та ін.

MOV

Формат компанії Apple для QuickTime-плеєра, може містити відео, анімацію, графіку. Підтримує будь-які аудіо- і відеокодеки

MPG

Часто вживаний формат завдяки невеликим втратам під час стиснення та сумісності з багатьма програмами і пристроями

MP4

Формат для зберігання відео, аудіо та деяких видів анімації. Підтримує багатоканальний звук. Найчастіше використовується в портативних пристроях, для передавання відеофайлів в інтернеті

ASF

Формат компанії Microsoft, використовується для передавання відео в інтернеті. Підтримує практично всі відеокодеки

MKV

(Matroska)

За можливостями перевищує AVI, може зберігати інформацію про титри, навігаційні меню тощо. У контейнер MKV можна впакувати відео й аудіо найрізноманітніших форматів

WebM

Відкритий формат (не вимагає ліцензії) компанії Google для веб-медіа. Спрощений аналог MKV з функціями, потрібними для мережі. Підтримується більшістю сучасних веббраузерів і медіаплеєрів

Існує значно більше форматів відео- та аудіофайлів, ніж ми розглянули. Їхня кількість зростає, оскільки вони створюються для різних пристроїв і мають різне призначення. Крім того, технології опрацювання мультимедійних даних розвиваються, це також спричиняє появу нових форматів файлів і «відмирання» застарілих.

Використання відео в програмах

Для перегляду відео за допомогою програм-програвачів його зберігають в одному файлі. Якщо ж потрібно, наприклад, зробити ані-маційного персонажа у власній ігровій програмі, то зручно мати ві-деофрагмент у вигляді окремих графічних файлів

Ви вже навчилися виводити у вікно власної програми мовою Python покадрову анімацію. Цю програму можна вдосконалити так, щоб в одному вікні виводилось декілька анімацій одночасно.

Опишемо клас, екземпляр якого за отриманим списком імен файлів і координатами виводитиме у заданому місці вікна анімацію:

Тепер у програмі можна створювати об’єкти класу Videosprite, кожний із яких у потрібному місці виводитиме анімацію із власного списку імен файлів (див. рисунок):

Як бачимо, розуміння принципів отримання рухомого зображення і кодування відеоданих дозволяє не тільки зберігати фільми для перегляду, але й складати цікаві власні програми з анімаційним оформленням

Питання для самоперевірки

1. Як отримують рухоме зображення?

2. Навіщо «стискають» цифрове відео?

3. Назвіть відомі вам формати відео.

4. Чому існує велика кількість відеоформатів?

5. Поясніть роботу методу__init__класу Videosprite (див. прик

лад 3).

6. Поясніть роботу методу animate класу Videosprite (див. приклад 3)

Вправа 13

1. Знайдіть в інтернеті відеофільм О. Довженка «Земля» для за

вантаження. Запишіть у зошиті формат і розмір відеофайлу; тривалість фільму. Розрахуйте обсяг відеоданих без упакування (див. приклад 1).

2. Поясніть, чому саме цей формат відеофайлу використовується

для передавання відео в інтернеті

3. Випробуйте програму, описану в прикладі 3. Збережіть про

граму у файлі з назвою Вправа 13. Доповніть програму так, щоб при клацанні на анімаціях вони зникали (пригадайте, як було реалізовано обробку клацання на об’єкті в 7 класі в практичній роботі 3)

Комп’ютерне тестування

Виконайте тестове завдання 13 із автоматичною перевіркою результату

Практична робота 6

Використання закодованих аудіо- й відеоданих у програмах на Python

Завдання: створити програму Піаніно (див. рисунок).

Обладнання:

комп’ютер із середовищем програмування IDLE; папки notes (із файлами формату OGG зі звуками нот) і frames (із файлами формату PNG із кадрами анімації).

Хід роботи

Під час роботи з комп’ютером дотримуйтеся правил безпеки.

1. Запустіть програму IDLE і відкрийте вікно нового файлу.

2. За зразком (див. приклад 3 у параграфі 13) запрограмуйте створення вікна програми (назва об’єкта root) із полотном canvas шириною 670 і висотою 230 пікселів.

3. На початку програми опишіть клас PianoKey.

Екземпляром цього класу буде білий або чорний прямокутник (клавіша), після клацання на якому відтворюється нота. Для створення екземпляра передаватимуться такі параметри: x, y — координати лівого верхнього кута; color — колір ('black' або 'white'); soundfile — ім’я звукового файлу:

4. Додайте до класу обробник клацання на прямокутнику лівою кнопкою миші:

5. Для того щоб перевірити правильність опису класу PianoKey, додайте до основної програми команди:

Запустіть програму. Збережіть її у файлі Практична робота 7. При клацанні на прямокутнику має звучати нота до.

6. Прямокутники для 8 нот можна отримати, записавши окремі команди для кожного з них (назви файлів для білих клавіш: do, re, mi, fa, sol, la, si, do2). Зробіть це і перевірте роботу програми.

7. Запрограмуйте малювання чорних клавіш (назви файлів для них: do-d, mi-b, fa-d, sol-d, si-b). Перевірте роботу програми.

8. З файлу Вправа 13 скопіюйте код класу Videosprite (весь!) і вставте на початок програми. Вилучіть рядки, які спричиняють зникнення об’єкта при клацанні.

9. Додайте до програми команду для виведення кадрів анімації з папки frames (замість трьох крапок допишіть імена решти графічних файлів):

10. Випробуйте роботу програми, спробуйте зіграти мелодію.

11. Для малювання білих клавіш записано 8 команд. Замініть їх таким фрагментом:

Перевірте роботу програми Поясніть, як працюють ці команди

12. Змініть програму так, щоб при клацанні на зображенні анімація припинялась, а при наступному клацанні — продовжувалась. Зробіть висновок про те, які можливості відкриває винайдення

 

 

Це матеріал з підручника Інформатика 8 клас Бондаренко (2021)

 




Попередня сторінка:  12. Поняття мультимедіа. Кодування ауді...
Наступна сторінка:   14. Програмне забезпечення для опрацюв...



^